home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-11-19 | 50.2 KB | 1,734 lines |
-
- ;Flight Simulator Adventure File
- ;
- ;Date Created: 11-19-1992
- ;
- ;A Flight from SJC-San Jose International to SFO-San Francisco International.
- ;Generated using the Pilot's ToolBox conversion feature that makes
- ;Adventure script files from FLIGHT PLANNER Flight Plans.
- ;
- ;The Pilot's ToolBox is a authored by Robert M. MacKay of RMM Consulting.
- ;For information on this product, contact Robert on Compuserve, in the
- ;FSFORUM, at ID 71641,2321.
- ;
- ;Required: FS4, AAF
- ;
- ;Recommended: A&SD, SGA, Flight Planner, Pilot's ToolBox
- ; Leave MAGROT.DRV driver out as it may mess up ILS approaches.
- ; Leave FRAME.DRV driver out as the Transponder is required.
- ;
- ;Notes: Clearance Del. Frequency is a default 118.0.
- ; Orig Ground Frequency is a default 121.7.
- ; Orig Tower Frequency is a default 124.0.
- ; Orig Departure Frequency is a default 121.3.
- ; Center Frequency is a default 134.15.
- ; Dest Approach Frequency is a default 134.5.
- ; Dest Tower Frequency is a default 120.5.
- ; Dest Ground Frequency is a default 121.8
- ; Flight Service Frequency is a default 122.20.
- ;
- ; Variables A-E are used to count seconds passed during timing loops.
- ; Variable F stores a 1/0 to show if downwind leg should be skipped.
- ; Variable G stores a 1/0 to show if base leg should be skipped.
- ; Variable H is used to calculate heading error.
- ; Variable I stores a 1/0 to show if a procedure turn is needed.
- ; Variable J is used to store the cloud cover density.
- ; Variable K is used as a counter for random weather change intervals.
- ; Variable L stores the current facility: 0-Grd 1-Twr 2-Dep 3-Ctr 4-App
- ; Variable M stores the current cleared heading (used by FPAutoPilot).
- ; Variable N stores the current cleared altitude (used by FPAutoPilot).
- ; Variable O is the message # counter fo the randome ATC chatter.
- ; Variable P stores a 1/0 to show if the Flight Plan Auto Pilot is on.
- ; Variable R is used to indicate climb, level, or descent (0/1/2).
- ; Variable S is used to track if user has deviated from IFR to VFR.
- ; Variables V and T store a 1/0 to indicate whether to use VOC/TXT.
- ; Variables W-Z are temporary variables for use in math, etc.
- ;
- ; This adventure works best with aircraft that cruise at 120kts.
- ;
- ; Winds from a Flight Planner flight plan are set at 3500' MSL.
- ;
- ; The FltPln AutoPilot (FPAP) will only climb/descend at 500 FPM.
- ; If you are going to use FPAP, be sure your flight plan was created
- ; with a plane having climb/descent rates of 500 FPM.
- ;
- ;Start adventure at origination. NOTE: This is a central point for the
- ;origination airport. It may put you in a building, water, etc. If you
- ;are crashed every time you start this adventure, then try changing the
- ;decimal values a little to move away from the object you are hitting.
- ;The best thing to do is get into FS4 and place yourself manually at the
- ;location you would like to start at and make a note of the exact N/E
- ;position. Then edit this file and place those coordinates in the
- ;following SETPOSITION statement.
- ;
- ;SETPOSITION(17185.0000,05164.0000,0)
- ;
- ;Set which random chatter message # to start with.
- SETVAR(X,22)
- Y:=random/X
- O:=remainder
- ;Set misc items.
- SETVAR(F,0)
- SETVAR(G,0)
- SETVAR(I,0)
- SETVAR(L,0)
- EQU norrot 754
- EQU magvar 756
- ;
- SETUP:
- PRINT "Default scenery; BAYAREA.SC1 recommended - hit 'x'"
- if key("x")
- GOTO OPTIONS
- endif
- GOTO SETUP
- ;Setup options for Voice/Text/Both.
- OPTIONS:
- PRINT"Adventure Setup...Please answer the following questions:"
- WAIT(4)
- PRINT"Press (W) for VOICE only, (E) for TEXT only, or (R) Both."
- CHKVT:
- IF KEY("W") THEN
- SETVAR(V,1)
- SETVAR(T,0)
- GOTO INTRO
- ENDIF
- IF KEY("E") THEN
- SETVAR(V,0)
- SETVAR(T,1)
- GOTO INTRO
- ENDIF
- IF KEY("R") THEN
- SETVAR(V,1)
- SETVAR(T,1)
- GOTO INTRO
- ENDIF
- GOTO CHKVT
- ;
- INTRO:
- ; Set Winds on Surface and Aloft.
- SETVAR(Y,-256)
- SETVAR(Z,4)
- w0vel:=w0vel&Y|Z
- SETVAR(w0turb,0)
- SETVAR(w0depth,45)
- SETVAR(w0dir,21845)
- SETVAR(Z,0)
- w3vel:=w3vel&Y|Z
- SETVAR(w3dir,0)
- SETVAR(w3turb,0)
- SETVAR(w3top,15000)
- SETVAR(w3bot,915)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V00"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Welcome to the flight from SJC to SFO."
- WAIT(4)
- PRINT"A Flight Planner converted Adventure made by the Pilot's ToolBox."
- WAIT(4)
- PRINT"Tune in San Jose International Clearance Delivery on 118.0 when ready to begin,"
- WAIT(4)
- PRINT"or press X to see some instructions."
- WAIT(4)
- PRINT""
- ENDIF
- ;
- ;On the ground at SJC receiving clearance.
- LOOPC:
- IF COM(118.0) THEN
- LOOPCA:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V01"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Jose International Clearance."
- WAIT(4)
- PRINT"Cleared to San Francisco International, direct SFO VOR, routing as filed."
- WAIT(4)
- PRINT"Climb and maintain 2000. Expect 3000 within 10 minutes after departure."
- WAIT(4)
- PRINT"Check latest weather report with Flight Service on 122.20."
- WAIT(4)
- PRINT"Departure on 121.3, ATIS on 125.20, Squawk 6404."
- WAIT(8)
- PRINT"Contact Ground on 121.7."
- WAIT(4)
- PRINT""
- ENDIF
- GOSUB CLEARVARS
- GOTO LOOP1
- ENDIF
- IF KEY("R") THEN
- GOTO INTRO
- ENDIF
- IF KEY("X") THEN
- PRINT"Pressing R will repeat the last message."
- WAIT(4)
- PRINT"Pressing W activates FPAP, pressing E de-activates the FPAP."
- WAIT(4)
- PRINT"Pressing J when tuned to FSS gives flt plan summary & weather."
- WAIT(4)
- PRINT"Pressing X when tuned to FSS will toggle request to go VFR/IFR."
- WAIT(4)
- PRINT"Pressing 7 after Departure Clearance will unfold IAP of SFO"
- WAIT(4)
- PRINT"Tune in San Jose International Clearance Delivery on 118.0 when ready to begin."
- WAIT(4)
- PRINT""
- ENDIF
- GOTO LOOPC
- ;
- ;On the ground at SJC awaiting taxi instructions.
- LOOP1:
- GOSUB COUNTER
- GOSUB FSS
- IF KEY("R") THEN
- GOTO LOOPCA
- ENDIF
- IF COM(121.7) THEN
- LOOP1A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V02"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Jose International Ground."
- WAIT(4)
- PRINT"Taxi to runway 30R and hold short."
- WAIT(4)
- PRINT"When holding, Contact Tower on 124.0."
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(A,0)
- LOOP1B:
- IF VARTEST(A,10,9999) THEN
- GOTO LOOP2
- ENDIF
- GOSUB FSS
- WAIT(1)
- ADDVAR(A,1)
- GOTO LOOP1B
- ENDIF
- IF VARTEST(A,10,9999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V03"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Contact San Jose International Ground on 121.7."
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(A,0)
- ENDIF
- GOTO LOOP1
- ;
- ;Taxi until holding short & squawking 6404
- LOOP2:
- IF KEY("R") THEN
- GOTO LOOP1A
- ENDIF
- GOSUB FSS
- IF GROUNDSPEED(0,0) THEN
- IF COM(124.0) THEN
- SETVAR(L,1)
- IF XPNDR(6404) THEN
- LOOP2A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V04"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Jose International Tower."
- WAIT(4)
- PRINT"You're cleared for departure runway 30R."
- WAIT(4)
- PRINT"Maintain runway heading on departure."
- WAIT(4)
- PRINT"Expect climbing turn to 2000."
- WAIT(4)
- PRINT""
- ENDIF
- GOTO LOOP2B
- ENDIF
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V05"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Please squawk 6404 for radar contact."
- WAIT(4)
- ENDIF
- WAIT(8)
- GOTO LOOP2
- ENDIF
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V06"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Contact San Jose International Tower on 124.0."
- WAIT(4)
- PRINT""
- ENDIF
- WAIT(5)
- GOTO LOOP2
- ENDIF
- IF ALTAGL(100,9999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V07"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Jose International Tower."
- WAIT(4)
- PRINT"You have departed before receiving clearance!"
- WAIT(4)
- PRINT"Your license is hereby revoked."
- WAIT(4)
- PRINT"Squawk 7777, tune 121.5, and activate your ELT."
- WAIT(5)
- PRINT"Your aircraft is being set to descend and maintain zero."
- WAIT(4)
- PRINT""
- ENDIF
- LOOP2C:
- SETVAR(X,15)
- SETVAR(Y,-256)
- emrgcy:=emrgcy&Y|X
- SETVAR(smoke_enable,1)
- SETVAR(smoke_now,1)
- WAIT(45)
- DAMO:
-
- SETVAR(magno,5)
- GOTO DAMO
- ENDIF
- GOTO LOOP2
- ;
- ;Check for Takeoff in Wrong Direction
- LOOP2B:
- IF KEY("R") THEN
- GOTO LOOP2A
- ENDIF
- IF ALTAGL(100,9999) THEN
- IF HEADING(285,300) THEN
- GOTO LOOP3
- ENDIF
- IF HEADING(300,315) THEN
- GOTO LOOP3
- ENDIF
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V08"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Jose International Tower."
- WAIT(4)
- PRINT"You have departed on the wrong runway!"
- WAIT(4)
- PRINT"Your license is hereby revoked."
- WAIT(4)
- PRINT"Squawk 7777, tune 121.5, and activate your ELT."
- WAIT(5)
- PRINT"Your aircraft is being set to descend and maintain zero."
- WAIT(4)
- PRINT""
- ENDIF
- GOTO LOOP2C
- ENDIF
- GOTO LOOP2B
- ;
- ;Takeoff
- LOOP3:
- IF KEY("R") THEN
- GOTO LOOP2A
- ENDIF
- GOSUB FSS
- IF ALTAGL(500,9999) THEN
- LOOP3A:
- IF RADIAL(17340,5060,0,0) THEN
- ENDIF
- W:=RESULT
- GOSUB CORRECTHDGCHK
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V09"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Jose International Tower."
- WAIT(4)
- PRINTVAR(W,"Climbing turn to 2000, heading ")
- WAIT(4)
- PRINT"Contact Departure on 121.3. Good day."
- WAIT(4)
- PRINT""
- ENDIF
- M:=W
- SETVAR(N,2000)
- GOTO LOOP4
- ENDIF
- GOTO LOOP3
- ;
- ;Contact Departure
- LOOP4:
- IF KEY("R") THEN
- GOTO LOOP3A
- ENDIF
- GOSUB FPAPCHK
- GOSUB TRAFFICCHK
- GOSUB RADARCHK
- GOSUB FSS
- GOSUB COUNTER
- IF COM(121.3) THEN
- SETVAR(L,2)
- W:=M
- GOSUB CHKHDGDIRECT
- IF VARTEST(H,-6,6) THEN
- IF ALTITUDE(1800,31999) THEN
- LOOP4A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V10"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Departure."
- WAIT(4)
- PRINT"Radar contact. Climb and maintain 3000."
- WAIT(4)
- ENDIF
- IF GEARDOWN() THEN
- IF VARMASK(retractable,255) THEN
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V11"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"San Jose International Tower reports gear still down."
- WAIT(4)
- ENDIF
- ENDIF
- ENDIF
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V12"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Contact Center on 134.15. See ya."
- WAIT(4)
- ENDIF
- SETVAR(N,3000)
- GOSUB CLEARVARS
- GOTO LOOP5
- ENDIF
- IF CYLINDER(17185,5164,0,9) THEN
- IF VARTEST(C,15,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V13"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Departure."
- WAIT(4)
- PRINT"Please expedite climb to cleared altitude of 2000 now!"
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- ENDIF
- GOTO LOOP4
- ENDIF
- IF VARTEST(B,10,31999) THEN
- IF RADIAL(17340,5060,0,0) THEN
- ENDIF
- W:=RESULT
- GOSUB CORRECTHDGCHK
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V14"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Departure."
- WAIT(4)
- PRINTVAR(W,"Establish a heading of ")
- WAIT(4)
- ENDIF
- M:=W
- SETVAR(B,0)
- ENDIF
- GOTO LOOP4
- ENDIF
- IF VARTEST(A,10,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V15"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Tower."
- WAIT(4)
- PRINT"Contact Departure on 121.3."
- WAIT(4)
- ENDIF
- SETVAR(A,0)
- ENDIF
- GOTO LOOP4
- ;
- ;Direct to San Francisco International VOR
- LOOP5:
- IF KEY("R") THEN
- GOTO LOOP4A
- ENDIF
- GOSUB FPAPCHK
- GOSUB TRAFFICCHK
- GOSUB RADARCHK
- GOSUB FSS
- GOSUB COUNTER
- IF COM(134.15)
- SETVAR(L,3)
- IF RADIAL(17340,5060,0,0) THEN
- ENDIF
- W:=RESULT
- GOSUB CORRECTHDGCHK
- IF VARTEST(H,-6,6) THEN
- LOOP5A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V16"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"Cleared direct to San Francisco International VOR at 3000."
- WAIT(4)
- ENDIF
- GOSUB CLEARVARS
- GOTO LOOP6
- ENDIF
- IF VARTEST(C,10,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V17"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINTVAR(W,"Establish a heading to San Francisco International VOR of ")
- WAIT(4)
- PRINT"Frequency for San Francisco International VOR is 115.80."
- WAIT(4)
- ENDIF
- M:=W
- SETVAR(C,0)
- ENDIF
- GOTO LOOP5
- ENDIF
- IF VARTEST(A,5,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V18"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Departure."
- WAIT(4)
- PRINT"Contact Center on 134.15."
- WAIT(4)
- ENDIF
- SETVAR(A,0)
- ENDIF
- GOTO LOOP5
- ;
- ;Waiting to get to San Francisco International VOR
- LOOP6:
- IF KEY("R") THEN
- GOTO LOOP5A
- ENDIF
- GOSUB FPAPCHK
- GOSUB TRAFFICCHK
- GOSUB RADARCHK
- GOSUB FSS
- GOSUB COUNTER
- IF RADIAL(17340,5060,0,0) THEN
- ENDIF
- W:=RESULT
- GOSUB CORRECTHDGCHK
- IF COM(134.15) THEN
- IF CYLINDER(17263,5112,0,8) THEN
- LOOP6A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V18"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"You're cleared direct to San Francisco International."
- WAIT(4)
- IF RADIAL(17340,5060,0,0) THEN
- ENDIF
- W:=RESULT
- GOSUB CORRECTHDGCHK
- PRINTVAR(W,"New heading should be close to ")
- WAIT(4)
- PRINT"Maintain current cleared altitude of 3000."
- WAIT(4)
- SETVAR(R,1)
- PRINT"Reduce speed and contact Approach on 134.50."
- WAIT(4)
- ENDIF
- M:=W
- SETVAR(N,3000)
- GOSUB CLEARVARS
- GOTO LOOP7
- ENDIF
- IF RADIAL(17263,5112,0,0) THEN
- ENDIF
- W:=RESULT
- GOSUB CORRECTHDGCHK
- IF VARTEST(H,-6,6) THEN
- IF ALTITUDE(2800,3200) THEN
- SETVAR(R,1)
- GOTO LOOP6
- ENDIF
- IF VARTEST(R,1,1) THEN
- IF VARTEST(A,10,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V19"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"Please maintain cleared altitude of 3000."
- WAIT(4)
- ENDIF
- SETVAR(A,0)
- ENDIF
- GOTO LOOP6
- ENDIF
- IF CYLINDER(17263,5112,0,0.187) THEN
- IF VARTEST(A,10,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V20"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"Expedite your climb to 3000."
- WAIT(4)
- ENDIF
- SETVAR(A,0)
- ENDIF
- ENDIF
- GOTO LOOP6
- ENDIF
- IF VARTEST(B,10,31999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V21"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"Establish and maintain a direct heading to San Francisco International VOR."
- WAIT(4)
- PRINTVAR(W,"You're heading should be close to ")
- WAIT(4)
- PRINT"Frequency for San Francisco International VOR is 115.80."
- WAIT(4)
- ENDIF
- M:=W
- SETVAR(B,0)
- ENDIF
- GOTO LOOP6
- ENDIF
- IF VARTEST(C,10,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V22"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"Please remain on frequency 134.15."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP6
- ;
- ;Approach to destination airport San Francisco International
- LOOP7:
- ; Set surface winds at destination
- SETVAR(Y,-256)
- SETVAR(Z,5)
- w0vel:=w0vel&Y|Z
- SETVAR(w0turb,0)
- SETVAR(w0depth,45)
- SETVAR(w0dir,-30947)
- LOOP7C:
- IF KEY("R") THEN
- GOTO LOOP6A
- ENDIF
- GOSUB FPAPCHK
- GOSUB TRAFFICCHK
- GOSUB RADARCHK
- GOSUB FSS
- GOSUB COUNTER
- IF COM(134.50) THEN
- SETVAR(L,4)
- ;Check for when to turn downwind
- IF CYLINDER(17340,5060,0,8) THEN
- ;See if approach will require a procedure turn after passing over the runway
- SETVAR(W,10)
- GOSUB CHKHDGDIRECT
- IF VARTEST(H,-45,45) THEN
- SETVAR(I,1)
- ENDIF
- ;See if downwind is necessary, if not, go direct to base leg
- SETVAR(W,190)
- GOSUB CHKHDGDIRECT
- IF VARTEST(H,-45,45) THEN
- LOOP7B:
- SETVAR(F,1)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V23"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Radar contact. Descend and maintain 2000."
- WAIT(4)
- PRINT"ATIS information is available on 118.85."
- WAIT(4)
- PRINT"Expect vectors to Final for runway 19L ILS approach."
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(N,2000)
- GOSUB CLEARVARS
- GOTO LOOP8
- ENDIF
- LOOP7A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V24"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Turn right for downwind heading 010."
- WAIT(4)
- PRINT"Descend and maintain 2000."
- WAIT(4)
- PRINT"Expect vectors to final for runway 19L ILS approach."
- WAIT(4)
- PRINT"ATIS information is available on 118.85."
- WAIT(4)
- ENDIF
- SETVAR(M,10)
- SETVAR(N,2000)
- GOSUB CLEARVARS
- GOTO LOOP8
- ENDIF
- GOTO LOOP7C
- ENDIF
- IF VARTEST(C,10,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V25"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(4)
- PRINT"Please contact Approach on frequency 134.50."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP7C
- ;
- ;On the downwind leg
- LOOP8:
- IF KEY("R") THEN
- IF VARTEST(F,1,1) THEN
- GOTO LOOP7B
- ENDIF
- GOTO LOOP7A
- ENDIF
- GOSUB FPAPCHK
- GOSUB TRAFFICCHK
- GOSUB COUNTER
- IF COM(134.50) THEN
- IF VARTEST(F,1,1) THEN
- GOTO LOOP8C
- ENDIF
- ;Check for when to turn base after downwind
- IF CYLINDER(17340,5060,8,9999) THEN
- GOTO LOOP8D
- ENDIF
- GOTO LOOP8
- LOOP8C:
- ;Check for when to turn base if no downwind
- IF CYLINDER(17340,5060,0,9999) THEN
- LOOP8D:
- ;See if procedure turn is required. If so, issue command & go direct to final
- IF VARTEST(I,1,1) THEN
- GOTO LOOP8B
- ENDIF
- ;See if base is necessary, if not, go direct to final leg
- SETVAR(W,190)
- GOSUB CHKHDGDIRECT
- IF VARTEST(H,-20,20) THEN
- LOOP8B:
- SETVAR(G,1)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- IF VARTEST(I,1,1) THEN
- PLAY"SJCSFO.V26"
- ENDIF
- IF VARTEST(I,0,0) THEN
- PLAY"SJCSFO.V27"
- ENDIF
- ENDIF
- IF VARTEST(T,1,1) THEN
- IF VARTEST(I,1,1) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Execute a standard Procedure Turn."
- WAIT(4)
- PRINT"Maintain 2000. Contact San Francisco International Tower on 120.50."
- WAIT(4)
- PRINT""
- ENDIF
- IF VARTEST(I,0,0) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Maintain 2000. Contact San Francisco International Tower on 120.50."
- WAIT(4)
- PRINT""
- ENDIF
- ENDIF
- SETVAR(N,2000)
- GOSUB CLEARVARS
- GOTO LOOP9
- ENDIF
- LOOP8A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- IF VARTEST(F,0,0) THEN
- PLAY"SJCSFO.V28"
- ENDIF
- IF VARTEST(F,1,1) THEN
- PLAY"SJCSFO.V29"
- ENDIF
- ENDIF
- IF VARTEST(T,1,1) THEN
- IF VARTEST(F,0,0) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Turn left for base heading 280."
- WAIT(4)
- PRINT"Maintain 2000. Contact San Francisco International Tower on 120.50."
- WAIT(4)
- ENDIF
- IF VARTEST(F,1,1) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Turn right for base heading 280."
- WAIT(4)
- PRINT"Maintain 2000. Contact San Francisco International Tower on 120.50."
- WAIT(4)
- ENDIF
- ENDIF
- SETVAR(M,280)
- SETVAR(N,2000)
- GOSUB CLEARVARS
- GOTO LOOP9
- ENDIF
- GOTO LOOP8
- ENDIF
- IF VARTEST(C,20,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V30"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Please set radio to Approach frequency 134.50."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP8
- ;
- ;On the base leg
- LOOP9:
- IF KEY("R") THEN
- IF VARTEST(G,1,1) THEN
- GOTO LOOP8B
- ENDIF
- GOTO LOOP8A
- ENDIF
- IF VARTEST(P,1,1) THEN
- GOSUB FPAPCHK
- ENDIF
- GOSUB TRAFFICCHK
- GOSUB COUNTER
- IF COM(120.50) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V31"
- ENDIF
- IF VARTEST(T,1,1) THEN
- LOOP9A:
- IF KEY("7")
- VIEW(10,"SFOIAP.PCX")
- ENDIF
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Cleared for landing on runway 19L, winds 190 at 5."
- WAIT(4)
- ENDIF
- IF VARTEST(G,1,1) THEN
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V32"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Line up for final and intercept localizer 108.90."
- ENDIF
- ENDIF
- IF VARTEST(G,0,0) THEN
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V33"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Turn left for final upon localizer 108.90 intercept."
- ENDIF
- WAIT(4)
- ENDIF
- IF VARTEST(P,1,1) THEN
- WAIT(10)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V34"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"**ATTENTION** The Flight Plan Auto Pilot is about to disengage!"
- ENDIF
- SETVAR(P,0)
- GOSUB FPAPOFF
- ENDIF
- GOSUB CLEARVARS
- GOTO LOOP10
- ENDIF
- IF VARTEST(C,10,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V35"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 Approach."
- WAIT(4)
- PRINT"Contact San Francisco International Tower on 120.50."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP9
- ;
- ;On final, waiting for touchdown
- LOOP10:
- IF KEY("7")
- VIEW(10,"SFOIAP.PCX")
- ENDIF
- IF KEY("R") THEN
- GOTO LOOP9A
- ENDIF
- GOSUB COUNTER
- IF VARMASK(ground,1) THEN
- GOTO LOOP11
- ENDIF
- IF COM(120.50) THEN
- IF CYLINDER(17340,5060,0,5) THEN
- LOOP10A:
- IF GEARUP() THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V36"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Please check landing gear status."
- WAIT(4)
- ENDIF
- ENDIF
- IF JETENGINE() THEN
- IF GROUNDSPEED(200,999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V37"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Reduce speed for final approach."
- WAIT(4)
- ENDIF
- ENDIF
- ENDIF
- IF PROPENGINE() THEN
- IF GROUNDSPEED(150,999) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V37"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower.
- WAIT(4)
- PRINT"Reduce speed for final approach."
- WAIT(4)
- ENDIF
- ENDIF
- ENDIF
- ENDIF
- WAIT(10)
- GOTO LOOP10
- ENDIF
- IF VARTEST(C,10,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V38"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Please keep radio on Tower frequency 120.50."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP10
- ;
- ;Touchdown!
- LOOP11:
- GOSUB COUNTER
- IF COM(120.50) THEN
- IF VARTEST(A,10,31999) THEN
- LOOP11A:
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V39"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Turn off active runway on first available taxiway and hold."
- WAIT(4)
- PRINT"Contact San Francisco International Ground on 121.80."
- WAIT(4)
- ENDIF
- GOSUB CLEARVARS
- GOTO LOOP12
- ENDIF
- GOTO LOOP11
- ENDIF
- IF VARTEST(C,10,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V40"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Please keep radio on Tower frequency 120.50."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP11
- ;
- ;Turned off runway and holding
- LOOP12:
- IF KEY("R") THEN
- GOTO LOOP11A
- ENDIF
- GOSUB COUNTER
- IF COM(121.80) THEN
- IF GROUNDSPEED(0,0) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V41"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Ground."
- WAIT(4)
- PRINT"Welcome to San Francisco International."
- WAIT(4)
- PRINT"Cleared for taxi to terminal area. So long."
- WAIT(4)
- PRINT"*** This concludes the adventure file ***"
- WAIT(5)
- ENDIF
- EOF
- ENDIF
- GOTO LOOP12
- ENDIF
- IF VARTEST(C,20,31999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"SJCSFO.V42"
- ENDIF
- IF VARTEST(T,1,1) THEN
- PRINT"Cessna 18390 San Francisco International Tower."
- WAIT(4)
- PRINT"Please contact San Francisco International Ground on 121.80."
- WAIT(4)
- ENDIF
- SETVAR(C,0)
- ENDIF
- GOTO LOOP12
- ;
- ;***************
- ;* SUBROUTINES *
- ;***************
- ;
- COUNTER:
- ADDVAR(A,1)
- ADDVAR(B,1)
- ADDVAR(C,1)
- ADDVAR(D,1)
- ADDVAR(E,1)
- WAIT(1)
- RETURN
- ;
- CLEARVARS:
- SETVAR(A,0)
- SETVAR(B,0)
- SETVAR(C,0)
- SETVAR(D,0)
- SETVAR(E,0)
- RETURN
- ;
- FPAPCHK:
- ;Parameters: M = Desired Heading
- ; N = Desired Altitude
- IF KEY("7")
- VIEW(10,"SFOIAP.PCX")
- ENDIF
- IF KEY("W") THEN
- SETVAR(P,1)
- SETVAR(heading_lock,1)
- SETVAR(altit_lock,1)
- PLAY"HASH.VOC"
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VYA"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"*** Flight Plan Auto Pilot is now engaged ***"
- WAIT(4)
- PRINT""
- ENDIF
- ENDIF
- IF KEY("E") THEN
- FPAPOFF:
- SETVAR(P,0)
- SETVAR(autop_master,0)
- SETVAR(heading_lock,0)
- SETVAR(altit_lock,0)
- PLAY"HASH.VOC"
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VYB"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"*** Flight Plan Auto Pilot is now disengaged ***"
- WAIT(4)
- PRINT""
- ENDIF
- ENDIF
- IF VARTEST(P,1,1) THEN
- ; Add MagVar and NorRot to Heading
- SETVAR(X,180)
- SETVAR(Z,32767)
- SETVAR(W,0)
- Y:=norrot+magvar
- IF VARTEST(Y,-32765,-1) THEN
- SETVAR(W,360)
- ENDIF
- Y:=norrot+magvar*X/Z-W+M
- IF VARTEST(Y,361,999) THEN
- Y:=Y-X-X
- ENDIF
- IF VARTEST(Y,-999,-1) THEN
- Y:=Y+X+X
- ENDIF
- ; Convert Heading to a WORD
- SETVAR(Z,65534)
- SETVAR(X,360)
- IF VARTEST(Y,0,180) THEN
- head_lock_var:=Y*Z/X
- ENDIF
- IF VARTEST(Y,181,360) THEN
- head_lock_var:=Y*Z/X-Z
- ENDIF
- ; Convert Altitude in feet to meters
- SETVAR(Y,305)
- SETVAR(Z,1000)
- X:=N*Y/Z
- altit_lock_var:=X
- SETVAR(autop_master,1)
- ENDIF
- RETURN
- ;
- FSS:
- IF COM(122.20) THEN
- IF KEY("J") THEN
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"PTB.VYC"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 18390 Flight Service."
- WAIT(4)
- PRINT"You're routed SJC->SFO at 3000."
- WAIT(4)
- PRINT"Latest weather report showed winds from 0 at 0 above 3500."
- WAIT(4)
- GOSUB WXCOND
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(C,0)
- GOTO FSSDONE
- ENDIF
- IF VARTEST(L,0,1) THEN
- GOTO FSSDONE
- ENDIF
- IF KEY("X") THEN
- PLAY"HASH.VOC"
- IF VARTEST(V, 1, 1) THEN
- PLAY"SJCSFO.VYE"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 18390 Flight Service."
- WAIT(4)
- PRINT"You're cleared for deviation from plan."
- WAIT(4)
- PRINT"Radar service suspended. Squawk 1200."
- WAIT(4)
- PRINT"Fly VFR while deviated."
- WAIT(4)
- PRINT"Contact us again when ready to resume flight as filed."
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(S,1)
- SETVAR(E,0)
- GOTO FSSVFR
- ENDIF
- ENDIF
- GOTO FSSDONE
- FSSVFR:
- IF COM(122.20) THEN
- IF KEY("X") THEN
- PLAY"HASH.VOC"
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VYD"
- GOSUB FSSWHOV
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 18390 Flight Service."
- WAIT(4)
- PRINT"Radar service resuming. Squawk 6404."
- WAIT(4)
- GOSUB FSSWHOT
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(S,0)
- SETVAR(C,0)
- GOTO FSSDONE
- ENDIF
- GOSUB COUNTER
- IF VARTEST(E,180,9999)
- PLAY"HASH.VOC"
- IF VARTEST(V,1,1) THEN
- PLAY"PTB.VYF"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 18390 Flight Service."
- WAIT(4)
- PRINT"Contact us again when ready to resume flight as filed."
- WAIT(4)
- PRINT""
- ENDIF
- SETVAR(E,0)
- ENDIF
- ENDIF
- GOSUB FPAPCHK
- GOTO FSSVFR
- FSSDONE:
- RETURN
- ;
- FSSWHOV:
- IF VARTEST(V,1,1) THEN
- IF VARTEST(L,0,0) THEN
- PLAY"SJCSFO.VYG"
- ENDIF
- IF VARTEST(L,1,1) THEN
- PLAY"SJCSFO.VYH"
- ENDIF
- IF VARTEST(L,2,2) THEN
- PLAY"SJCSFO.VYI"
- ENDIF
- IF VARTEST(L,3,3) THEN
- PLAY"SJCSFO.VYJ"
- ENDIF
- IF VARTEST(L,4,4) THEN
- PLAY"SJCSFO.VYK"
- ENDIF
- ENDIF
- RETURN
- ;
- FSSWHOT:
- IF VARTEST(T,1,1) THEN
- IF VARTEST(L,0,0) THEN
- PRINT"Contact Ground on 121.80."
- ENDIF
- IF VARTEST(L,1,1) THEN
- PRINT"Contact Tower on 124.0."
- ENDIF
- IF VARTEST(L,2,2) THEN
- PRINT"Contact Departure on 121.3, expect vectors back to plan."
- ENDIF
- IF VARTEST(L,3,3) THEN
- PRINT"Contact Center on 134.15, expect vectors back to plan."
- ENDIF
- IF VARTEST(L,4,4) THEN
- PRINT"Contact Approach on 134.50, navigate back into the pattern."
- ENDIF
- ENDIF
- RETURN
- ;
- WXUPDATE:
- ADDVAR(K,1)
- IF VARTEST(K,0,40) THEN
- GOTO WXEND
- ENDIF
- SETVAR(K,0)
- SETVAR(X,101)
- Y:=random/X
- X:=remainder
- IF VARTEST(X,0,999) THEN
- GOTO WXEND
- ENDIF
- SETVAR(X,101)
- Y:=random/X
- X:=remainder
- IF VARTEST(X,0,0) THEN
- SETVAR(Y,1)
- J:=J-Y
- IF VARTEST(J,-999,-1) THEN
- SETVAR(J,0)
- ENDIF
- IF VARTEST(J,9,999) THEN
- SETVAR(J,8)
- ENDIF
- X:=J
- IF VARTEST(X,-999,-1) THEN
- SETVAR(X,0)
- ENDIF
- IF VARTEST(X,9,999) THEN
- SETVAR(X,8)
- ENDIF
- cloud1cover:=X
- ENDIF
- SETVAR(X,156)
- cloud1top:=cloud1top-X-X
- Y:=cloud1bot+X
- IF VARTEST(Y,-9999,976) THEN
- SETVAR(Y,976)
- ENDIF
- cloud1bot:=Y
- WXEND:
- RETURN
- ;
- WXCOND:
- SETVAR(X,305)
- SETVAR(Z,100)
- Y:=cloud1bot*X/Z
- IF VARTEST(cloud1cover,0,0) THEN
- PRINT"Visibility 10 with clear skies."
- ENDIF
- IF VARTEST(cloud1cover,1,4) THEN
- PRINTVAR(Y,"Currently scattered clouds with a measured ceiling of ")
- ENDIF
- IF VARTEST(cloud1cover,5,7) THEN
- PRINTVAR(Y,"Currently broken clouds with a measured ceiling of ")
- ENDIF
- IF VARTEST(cloud1cover,8,8) THEN
- PRINTVAR(Y,"Currently overcast with a measured ceiling of ")
- ENDIF
- RETURN
- ;
- CORRECTHDGCHK:
- ;
- ;Parameters: W = Opposite Desired Heading
- ;Variables : U = Current Heading
- ; X,Y,Z = temporary
- ;Outputs : W = Required Heading
- ; H = Absolute value of Heading error in degrees
- ;
- ; Compute good heading from radial
- SETVAR(X,180)
- W:=W+X
- CHKHDGDIRECT:
- SETVAR(X,360)
- IF VARTEST(W,-800,0) THEN
- W:=W+X
- ENDIF
- IF VARTEST(W,361,800) THEN
- W:=W-X
- ENDIF
- ; Compute current heading
- IF COURSE(0,0) THEN
- ENDIF
- U:=RESULT
- ; Compute heading error regardless of Curr/Req Hdg values
- H:=U-W
- SETVAR(Y,-1)
- IF VARTEST(H,-999,-1) THEN
- H:=H*Y
- ENDIF
- ; Compute heading error depending if Curr or Req heading is greater
- IF VARTEST(H,181,999) THEN
- SETVAR(Y,1)
- Z:=W+Y
- SETVAR(Y,360)
- IF VARTEST(U,Z,999) THEN
- H:=U-W-Y
- GOTO CHKHDGCONT
- ENDIF
- H:=U-W+Y
- ENDIF
- CHKHDGCONT:
- RETURN
- ;
- RADARCHK:
- IF XPNDR(6404) THEN
- GOTO RADARCHKA
- ENDIF
- PLAY"HASH.VOC"
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VYL"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(2)
- PRINT"We have lost you off the radar."
- WAIT(2)
- PRINT"Please squawk 6404 unless told otherwise."
- WAIT(4)
- PRINT""
- ENDIF
- WAIT(10)
- GOTO RADARCHKB
- RADARCHKA:
- IF VARTEST(RANDOM,0,300) THEN
- PLAY"HASH.VOC"
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VYM"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 18390 Center."
- WAIT(2)
- PRINT"Radar check to follow..."
- WAIT(1)
- ENDIF
- IF ALTITUDE(0,0) THEN
- ENDIF
- PRINTVAR(RESULT,"...Altitude: ")
- WAIT(2)
- IF HEADING(0,0) THEN
- ENDIF
- PRINTVAR(RESULT,"...Heading: ")
- WAIT(2)
- IF COURSE(0,0) THEN
- ENDIF
- PRINTVAR(RESULT,"...Course: ")
- WAIT(2)
- IF AIRSPEED(0,0) THEN
- ENDIF
- PRINTVAR(RESULT,"...Airspeed: ")
- WAIT(2)
- PRINT ""
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VYN"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Radar check complete. Thank you and so long."
- WAIT(2)
- PRINT ""
- ENDIF
- ENDIF
- RADARCHKB:
- RETURN
- ;
- ;***************
- ;* ATC CHATTER *
- ;***************
- ;
- TRAFFICCHK:
- IF VARTEST(RANDOM,0,2500) THEN
- IF VARTEST(O, 0, 0) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZA"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"American 267 Heavy Center."
- WAIT(4)
- PRINT"Climb to FL340, traffic eastbound at FL320."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 1, 1) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZB"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Delta 1244 Center."
- WAIT(4)
- PRINT"At station passage, resume normal navigation. So Long."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 2, 2) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZC"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Cessna 2034 Center."
- WAIT(4)
- PRINT"Descend and Maintain 3000. Contact Approach Control. Good day."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 3, 3) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZD"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Yankee Cargo 662 Center."
- WAIT(4)
- PRINT"You're cleared for 12000."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 4, 4) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZE"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"United 3168 Heavy Center."
- WAIT(4)
- PRINT"Reduce speed to 210. Descend and maintain FL180."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 5, 5) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZF"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"American 267 Heavy Center."
- WAIT(4)
- PRINT"Please repeat that last request."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 6, 6) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZG"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"US Air Express Center."
- WAIT(4)
- PRINT"Be advised of significant turbulence in the area."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 7, 7) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZH"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"American Eagle 2190 Center."
- WAIT(4)
- PRINT"Turn right for downwind. Expect ILS vectors."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 8, 8) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZI"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Care Flight One Center."
- WAIT(4)
- PRINT"You're cleared on a direct visual."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 9, 9) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZJ"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"American 2143 Center."
- WAIT(4)
- PRINT"Descend and maintain 7000. Continue to hold at the marker."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 10, 10) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZK"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Piper 6229 Center."
- WAIT(4)
- PRINT"Turn heading 080. Maintain current altitude."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 11, 11) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZL"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Grand Tours 215 Center."
- WAIT(4)
- PRINT"Remain under 1000 to continue visual clearance."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 12, 12) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZM"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Delta 447 Center."
- WAIT(4)
- PRINT"Squawk 2831. Expect radar check."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 13, 13) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZN"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Citation 220 Center."
- WAIT(4)
- PRINT"Climb to 15000. Watch for traffic westbound."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 14, 14) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZO"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Delta 310 Heavy Center."
- WAIT(4)
- PRINT"Descend to 2500 and contact approach. So long."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 15, 15) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZP"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Citation 220 Center."
- WAIT(4)
- PRINT"Turn heading 322. Maintain 16000."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 16, 16) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZQ"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"US Air 3351 Center."
- WAIT(4)
- PRINT"Expect vectors around storm cell."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 17, 17) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZR"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Continental 1144 Center."
- WAIT(4)
- PRINT"Proceed direct to outer marker and Hold."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 18, 18) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZS"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"United 337 Heavy Center."
- WAIT(4)
- PRINT"Prepare for handoff to approach when you reach 3000."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 19, 19) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZT"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Federal Express 662 Center."
- WAIT(4)
- PRINT"Expedite descent to 8000. Report fuel status."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 20, 20) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZU"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"United 449 Center."
- WAIT(4)
- PRINT"Reduce speed to 190. Contact Approach. Bye."
- WAIT(4)
- ENDIF
- ENDIF
- IF VARTEST(O, 21, 21) THEN
- IF VARTEST(V, 1, 1) THEN
- PLAY"PTB.VZV"
- ENDIF
- IF VARTEST(T, 1, 1) THEN
- PRINT"Southwest 1221 Center."
- WAIT(4)
- PRINT"Maintain current heading and altitude."
- WAIT(4)
- ENDIF
- ENDIF
- PRINT""
- ENDIF
- ADDVAR(O,1)
- IF VARTEST(O, 22, 999) THEN
- SETVAR(O,0)
- ENDIF
- RETURN